package com.weiiew.itemtypeservice.service;

import com.weiiew.common.entity.dto.ItemType;
import com.weiiew.common.entity.simple.SimpleType;
import com.weiiew.common.entity.vo.ItemTypeVO;

import java.util.List;

/**
 * @Description 物品种类Service层
 * @Author 魏锴
 * @Date 2024/8/6
 */
public interface ItemTypeService {

    /**
     * 获取物品种类列表
     *
     * @param version 版本号
     * @return 已有物品种类的键值对列表
     */
    List<SimpleType> getSimpleItemTypes(Integer version);

    /**
     * 获取物品种类列表
     *
     * @param version 版本号
     * @return 物品种类列表
     */
    List<ItemTypeVO> getItemTypes(String name, Integer version);

    /**
     * 创建物品种类
     *
     * @param type 物品种类信息
     * @return 创建结果
     */
    boolean createType(ItemType type);

    /**
     * 修改类名
     *
     * @param id   类id
     * @param name 新类名
     * @return 修改结果
     */
    boolean renameType(Integer id, String name);

    /**
     * 删除物品种类
     *
     * @param id 物品id
     * @return 删除结果
     */
    boolean removeType(Integer id);
}
